A mobile phone in a terrestrial cellular system is more limited by cochannel interference (i.e., interference from other phones using the same carrier frequency at a distant cell), than by power considerations. Thus, a loss of 0.5 dB or even 1 dB in required transmitted energy-per-bit typically does not cause a noticeable degradation in voice (or data) quality. The basestation can transmit more power to the phone, and the phone can increase its power to the basestation. As a result, terrestrial systems can accommodate the overhead loss incurred in error control coding relatively easily.
Mobile satellite communications systems are, in contrast, severely power limited, and savings in required transmitted bit energy are highly desirable. GSM is currently the most widely deployed wireless cellular telephone standard for digital speech transmission. It has been adapted to provide wireless communication for Geostationary circular orbit satellites as well as via normal terrestrial cellular networks. It would be desirable to reduce the overhead in error control coding while maintaining good performance in a GSM-compatible mobile satellite system.
By way of background, a brief description of GSM principles will now be presented.
An exemplary GSM superframe structure consists of 4.times.26 frames as shown in FIG. 1A. Each row in FIG. 1A comprises 26 TDMA frames. In every row, frames 1-12 and 14-25 each contain eight traffic timeslots. TDMA frame 13 (the IDLE frame) is not used for transmission, but allows the mobile receiver to capture and decode a broadcast control channel (BCCH) signal burst from a neighboring base station. Since neighboring base stations in GSM are not required to be synchronized, the idle frame guarantees that the mobile can capture the BCCH regardless of the time offset between the neighboring base stations.
Every 26th frame in the superframe structure (the last column in FIG. 1A) contains Slow Associated Control Channel (SACCH) information. Each SACCH message is interleaved over the 4 SACCH bursts in each superframe. Each SACCH frame comprises 8 time slots (1 per traffic slot in each frame) allowing one unique SACCH channel per mobile link.
Each mobile unit is allocated 1 out of the 8 timeslots in each frame (its "channel"). Digitally coded voice data frames for a mobile unit are interleaved over 8 successive frames, maintaining the same time slot in every frame. Block diagonal interleaving can be used to reduce delay, whereby the first four time slots (in each 8 frame interleaving pattern) each comprise bits half from the current speech frame and half from the previous speech frame. The last four time slots (in each 8 frame interleaving pattern) each comprise bits half from the current speech frame and half from the next speech frame.
Speech frames are generated, e.g., every 20 mS, by the speech coder. With a speech coding rate of 13 Kbps this corresponds to 260 bits per 20 mS speech frame. The speech bits are coded up to 456 bits. In GSM, these 456 bits are divided into 8 groups of 57 bits each. 57 bits of one speech frame are interleaved with 57 bits of another speech frame (as described above for block diagonal interleaving). To these 114 bits is added a 26 bit sync word, two 1 bit FACCH (fast associated control channel) flags, two sets of 3 tail bits (for the modulation), and 8.25 bits to accommodate up/down ramping and guard time to form a TDMA slot (577 .mu.S) comprising 156.25 bits. These bits are transmitted at a bit rate of 270.833 KB/s (=13 MHz/48).
The exemplary format of each GSM burst is shown in FIG. 1B. An 8.25-bit guard and up/down ramping time is provided between each burst. The up/down ramping of one burst may overlap with that of the adjacent burst but may not overlap with its other bits. The up/down ramping on the uplink (mobile) transmissions is usually 4.25 bit periods leaving a 4 bit period margin for time alignment error between different mobile bursts as received at the base station. The base station sends SACCH commands to advance or retard mobile unit transmit timing to accomplish this function. Base stations in a GSM system have a fixed transmit timing and hence can in principle use the whole 8.25 bit periods for up/down ramping.
The 3t (tail) bits allow the impulse response of the channel and modulation filter to terminate within the burst. It is important to receive the tails of the end bits to ensure the end bits are demodulated with the same error probability as bits in the middle of the burst.
The flag bits (1f+1f) on either side of the sync word indicate whether the previous or current 20 mS speech frame contains speech information or FACCH control information. One complete 20 mS speech frame typically has 8 associated flag bits in total, enabling a reliable majority decision to be made on whether the frame is speech or FACCH.
The sync word of 26 bits allows the coefficients of a symbol-spaced, 5-tap model of the composite channel impulse response (comprising transmit and receive filtering and physical channel) to be determined using 22 equations. Thus, each burst can be demodulated with no additional information from previous bursts. To accommodate frequency hopping, GSM assumes no correlation between the 5 channel taps of one burst and the taps of the next. The short burst length of 577 .mu.S allows the assumption that the channel taps are static over the burst, i.e. the phase and amplitude of each tap as determined from the central sync word are still valid at the burst extremities even at speeds of 250 km/hour at 900 MHz or 100 km/hour at 2 GHz.
A full-rate GSM frame consists of 8 traffic bursts, of the format described above, multiplexed on the same carrier. Alternatively, the first slot of each frame (only one fixed carrier per cell) may be given to the broadcast control channel (BCCH). The BCCH slot does not frequency hop, but the other slots in the frame containing traffic may be frequency-hopped. Thus, the traffic slots on the same carrier as the BCCH may contain data from different mobiles from frame to frame. The BCCH carrier is left on at maximum power in all time slots whether or not the traffic slots contain active traffic. The traffic slots are filled with dummy traffic if idle. This assists mobiles in detecting the BCCH carrier when first powered-up.
Once detected, the BCCH slot format contains features to assist mobiles acquire network sync on power-up. BCCH slots in successive frames form a repeating 51-frame pattern. Each slot in this frame has a defined purpose. Two out of the 51 slots contain the FCH (Frequency Correction Burst) which is an "unmodulated" burst. More particularly, the FCH burst is an alternating "1010 . . . " bit pattern which, after the GSM modulation, produces a single spectral line which is offset from the carrier frequency by 1/4 of the bitrate (i.e. a continuous MARK symbol in FSK parlance). This can be detected by a narrowband filter in the mobile to enhance signal-to-noise ratio by 10-15 dB allowing reliable instantaneous detection and providing coarse time sync with the BCCH slot structure. The synchronization channel (SCH) burst is a fixed number of slots away from the FCH, and hence once the FCH burst is located the mobile can find the SCH burst. The SCH burst contains an extended sync word plus the base station and network ID. Correlation with the SCH provides fine sync to the bit level. No sync finer than bit level is needed when using multiple channel tap demodulators.
The BCCH frame period of 51 is deliberately prime with respect to the traffic channel superframe period of 104 frames (4.times.26). The 51 frame period (multiframe) results in the BCCH slot sliding through 51.times.52 TDMA frames and guarantees that the FCH (and likewise the SCH) will appear sometime in the IDLE frame. This allows a mobile locked in conversation to the traffic superframe format to scan neighboring base stations using only the idle frames and in slow time to go through the normal sync acquisition process with them. The timing offset between current and neighboring bases is stored to expedite future scanning and eventual handover. Moreover, the 51.times.52 extended frame pattern length, plus other broadcast information, is used to define a frame numbering scheme employed in the ciphering process.
For satellite communications, the basic superframe format is similar to the GSM "half-rate" format in which a particular mobile uses only every alternate TDMA frame (8 slots), making effectively 16-slot frames of twice the length (9.23 mS). We refer to this as the full-rate satellite mode. A half-rate satellite mode can also be defined whereby a mobile uses only every 4th TDMA frame (8 slots) making effectively a 32-slot frame of length (18.46 ms).
The use of the 32-slot mode or the 16-slot mode depends on the traffic distribution and channel conditions.
The superframe structure for the full-rate satellite mode is shown in FIG. 2A. In FIG. 2A, the first 12 frames F1 through F12 contain 16 traffic slots each and the 13th frame contains 16 SACCH slots. Each SACCH slot is associated with a corresponding traffic slot. To preserve one SACCH per each traffic slot (now 16), the SACCH frame can be combined with the IDLE frame to make a 16-slot SACCH frame.
The SACCH messages, as in GSM, can be interleaved over four successive SACCH frames. 20 mS of speech data may be interleaved using diagonal interleaving, but over only 4 frames (the same interleaving delay). Alternatively, 40 mS speech frames may be diagonally interleaved over 8 traffic frames.
Satellite communication systems are severely power limited and bandwidth limited, requiring speech coding at bitrates of 1/2 to 1/3 those used in digital cellular. On the other hand, a noise-limited rather than the co-channel interference-limited situation justifies more error correction coding than a terrestrial cellular system, increasing the transmitted bitrate. Therefore a 16-slot format for a satellite communications system provides nominally the correct scaling of transmitted bits per user compared to a terrestrial cellular system.
However, a particular satellite system can be power or bandwidth limited or noise or self-interference limited. This varies from system to system or even from cell-to-cell within the same system. Therefore a 32-slot mode can also be defined which provides half the transmitted bitrate per user. This mode employs the same speech coding as the 16-slot mode with half as much error correction coding, or an even lower speech error correction coding rate or information rate. For purposes of explanation, it is assumed that the 32-slot mode uses the same speech coding rate and the same error correction coding. It also uses the same slot and superframe structure as the 16-slot structure defined in FIG. 2A, but only every alternate frame is transmitted. The unused frames may be allocated to other users, doubling bandwidth utilization in cells that are not limited by co-channel interference from surrounding cells.
The coding and interleaving employed in this example makes the use of 16 or 32-slot format completely transparent to the mobile or ground receivers, so that they do not need to be informed in advance of switching from one mode to the other by elaborate message exchange at layer 3.
Speech is coded to 4 kB/sec, then error-correction coded using a rate 1/3rd code composed of two rate 2/3rd codes of equal performance. One of the rate-2/3rd coded information streams (6 kB/sec) is transmitted on even frames (or not as the case may be) and the other stream, carrying the same information coded using the other rate 2/3rd code, is transmitted on odd frames (or not, as the case may be). The receiver always receives every frame, and determines from the sync correlation if the frame contains an intended burst or not. If another mobile is allocated the burst, the sync code used will be orthogonal to that of the first mobile to allow easy discrimination. If both even and odd frames contain intended data, the combined bits from both rate 2/3rd codes form a rate 1/3rd code with enhanced performance as well as twice the power. If only odd frames contain intended data, the even frames are erased and given no weight in the decoder, which then gives the performance of a single rate 2/3rd error correction code. If even frames sometimes contain intended data and sometimes not, depending on where after deinterleaving the bits appear in the input stream to the decoder, the performance will range between a rate 2/3rd code and a rate 1/3rd code.
There is only one 16-slot frame allocated to SACCH, therefore if operating in the 32-slot mode with 32 different mobile links, a SACCH frame is addressed to either the odd-frame mobile or the even-frame mobile by means of an odd/even bit in the message.
The satellite downlink can benefit from a reduction in the TDMA overhead. The number of sync bits is reduced from 26 to 22 while the FACCH flag bits are deleted. A reduced-overhead downlink satellite-mode slot format is shown in FIG. 2B. Due to the 16-slot format compared to GSM's 8-slot format, signal processing load in the phone is halved at least, allowing both the FACCH decoder and the speech frame decoder to be run on every frame. This also provides a much more reliable speech/FACCH decision, as determined from current product implementations. The speech decoder algorithm is first executed, and then the FACCH decoder is run in the time that GSM would normally be processing the next speech frame. The CRC's indicate whether the decoded output should be interpreted as speech or as FACCH information.
On the carrier that contains the Broadcast Control Channel (BCCH), the first slot of every 16-slot frame, including SACCH frames, is given to the BCCH channel. The BCCH structure as in the GSM case is composed of a 51-frame repeating pattern containing FCH, SCH, broadcast control channel (BCCH) and paging channels (PCH). The frame number in this structure (0-50), combined with the frame number (0-51) of the traffic superframe structure, defines the least significant part of a frame numbering scheme for ciphering purposes.
The significant differences between GSM BCCH and an exemplary satellite-mode BCCH will now be described. First, the carrier on which satellite-mode BCCH is transmitted is not necessarily active in all time slots. If no conversation is currently set up on a particular beam and carrier, only the BCCH slot may contain energy. Second, even when active traffic slots are contained in the same frame as a satellite-mode BCCH, they are not necessarily all at the same power level, due to a dynamic power control algorithm. The satellite BCCH slot can also be transmitted at a higher power than the mean of traffic bursts. Third, the FCH is not an unmodulated burst, but can be redefined as a High Margin Short Message Service (HM-SMS). More detail on such a short message service is provided in the copending, commonly assigned application entitled "High Power Short Message Service Using Broadcast Control Channel", the entirety of which is incorporated herein by reference. The SCH can also be used for the HM-SMS. Such an implementation provides 4 message bursts per 51 frames of HM-SMS capacity. The HM-SMS signal structure enables acquisition by mobile units in a highly disadvantaged location providing as much as 30 dB margin over an ideal, free-space, AWGN channel. Each HM-SMS burst contains one of a limited number of predetermined bit patterns resembling a long sync word, and are also transmitted at a higher power than the other 47 BCCH bursts. The HM-SMS bursts are therefore ideal for rapid initial system acquisition by mobiles in normal situations and fulfill the functions of the FCH and SCH. Fourth, the message content of the broadcast information on the satellite BCCH is different from that of GSM, although it contains some common parameters. The satellite BCCH will broadcast satellite-system related parameters for all satellites sufficient to allow the mobile to determine its position from the satellite signals.
A mobile phone is peak power limited due to the current drain from the battery. QMSK and .pi./QPSK have a peak to average envelope variation ranging between 3-4 dB. Further, they require a linear power amplifier that is at least 50% less efficient than a Class-C or quasi Class-C power amplifier that can be used with a constant envelope modulation. Thus, on the uplink constant envelope modulation such as GMSK is more power efficient. GMSK does not have high adjacent channel interference protection and thus requires additional signal processing at the satellite demodulator. On the downlink, since the spacecraft has a linear matrix power amplifier, linear modulation can be used to provide high adjacent channel interference protection without additional processing in the phone. Offset Quadrature Phase Shift Keying (OQPSK) can be used to allow demodulation with a GMSK compatible receiver such as in GSM.
Error control coding is commonly used in the transmission of digital information, and is particularly in mobile radio systems. For example, convolutional coding techniques with constraint lengths ranging from 5 to 7 are commonly used in American Digital Cellular and in GSM.
In conventional mobile radio systems, convolutional encoding is terminated by requiring a shift register encoder to start and end in a known state (e.g., all zeros). The shift register is first initialized by a first sequence of m zeros, where m is the number of memory elements in the encoder, followed by the information sequence. At the end of transmission a second sequence of m zeros is added to the end of the information sequence. The m zeros in the second sequence are called tail bits. Tail bits cause a power loss of L/(L+m), where L is the block length of the information sequence. In terrestrial mobile systems, this power loss does not present a problem since such systems are not power limited.
Planned future global and regional satellite systems also propose the use of convolutional coding. Due to the power limitations of satellites, the tail bit loss (on the order of 0.5 dB) causes a substantial degradation in the system link margin.
To avoid tail bit loss, tail biting encoding can be used, in which the shift register encoder is initialized by the last m information bits, followed by the information sequence. In this case, the initial state and the final state are the same, just as in conventional convolutional coding. The problem of decoding such codes remains. Maximum likelihood decoding is too complex for convolutional or tail biting codes since a search over 2.sup.m states is required to terminate the code.
As will be appreciated by those of ordinary skill in the art, a conventional convolutional encoder can be described by a trellis diagram. The length of the trellis L depends on how soon the convolutional code needs to be terminated. Decoding is then performed by finding the most likely path through the trellis, usually using the well-known Viterbi Algorithm. The path that has the best metric is chosen as the path traced by the transmitted sequence. It would be desirable to provide a reliable and relatively simple method for decoding convolutional and tail biting codes. It would further be desirable to provide a decoding method in which power consumption is reduced so that the method can be advantageously employed in a satellite or other power-limited telecommunications system.